﻿using System;
using KPIS.GERP.GFMS.MODEL;
using System.Collections.Generic;

namespace KPIS.GERP.GFMS.IDAL
{
    public interface IDAL_BGM_ProjectOperationReport
    {
        IList<M_BGM_ProjectOperationReport> GetFull(Nullable<int> bgm_proj_oper_seq, Nullable<int> bgm_proj_oper_exp_seq
            , Nullable<int> rpt_type);
        IList<M_BGM_ProjectOperationReport> GetFull(int? bgm_proj_oper_rpt_seq, int? bgm_proj_oper_exp_seq
            , int? icm_ppr_item_seq, int? icm_pr_item_seq, int? icm_po_install_item_seq, int? icm_dn_item_seq
            , int? money_req_dtls_seq, int? return_dtls_seq, int? petition_dtls_seq, int? pay_seq, int? receive_seq);
        IList<M_BGM_ProjectOperationReport> GetList(Nullable<int> bgm_proj_oper_seq, Nullable<int> bgm_proj_oper_exp_seq
            , Nullable<int> rpt_type);
        IList<M_BGM_ProjectOperationReport> GetCalculateList(Nullable<int> bgm_proj_oper_seq
            , Nullable<int> bgm_proj_oper_exp_seq, Nullable<int> rpt_type
            , Nullable<int> bgm_trans_from_seq, Nullable<int> bgm_trans_to_seq
            , Nullable<int> bgm_booking_seq, Nullable<int> icm_ppr_item_seq
            , Nullable<int> icm_pr_item_seq, Nullable<int> icm_po_item_seq
            , Nullable<int> icm_dn_item_seq, Nullable<int> money_req_dtls_seq
            , Nullable<int> return_dtls_seq, Nullable<int> petition_dtls_seq
            , Nullable<int> pay_seq);
        IList<M_BGM_ProjectOperationReport> GetPreviousRpt(int seq, int rpt_type);
        M_BGM_ProjectOperationReport GetInfo(int seq);

        void Insert(M_BGM_ProjectOperationReport info);
        void Update(M_BGM_ProjectOperationReport info);
        void Delete(M_BGM_ProjectOperationReport info);
        void UpdateStatus(M_BGM_ProjectOperationReport info);
    }
}
